草庐IT

c++ - Win32 : Monitoring for files being created or changed

全部标签

c - 我如何在 win32 平台上用 C 实现时间驱动的任务?

我是C语言的新手,我试图找到一些代码片段来弄清楚如何在C语言中实现时间触发的任务。我有两个函数,它们的执行时间可能在50到200毫秒之间变化。我想将这些函数传递给一个工作线程,该线程应安排为每500毫秒运行一次。在C(win32平台)中是否有一种简单的方法(如java的TimerTask)来使用标准运行时库实现定时器任务? 最佳答案 使用c你可以使用win32SetTimer功能 关于c-我如何在win32平台上用C实现时间驱动的任务?,我们在StackOverflow上找到一个类似的问

c - Win32开发。标准

对所有Win32开发人员的呼吁...我正在使用纯Win32在C中开发一个应用程序。我想问一下关于这些东西的Windows开发标准:是否有标准的Windows错误日志API?例如,如果我的客户使用我的应用程序并且它崩溃了,我希望他们向我发送错误日志,我希望这是一个标准位置,以便他们可以使用标准Windows日志实用程序访问它。我的应用需要存储设置信息。我认为注册表是这项任务的标准实用程序。是吗?我的应用需要存储和检索它从互联网下载的文件-图片、可执行文件等。ApplicationData/myapp是存储此类信息的标准位置吗?我的应用程序需要一个非常简单的数据库-我为此使用CSV。我基本

windows - 将 Win32 API 功能与 pthreads 一起使用/从 pthreads 使用

我有自己的线程库,使用TinyThread++构建。它工作得很好,对我来说也是一次很好的学习经历。我有自己的数据结构来传递消息,这个界面对我来说很有意义,主要是因为我是它的作者。每当在我的系统中创建一个线程时,它都会循环运行,并偶尔通过我自己设计的消息传递协议(protocol)检查消息。现在我想开始使用一些WindowsAPI功能,Windows有自己的一套约定和消息队列等。现在我很确定TinyThread++使用pthreads。由于我使用的是MinGW,我想知道是否在Windows线程上实现了pthreads。如果是这种情况,我也许可以将我的pthreads-threads视为w

c++ - Windows下如何为Code::Blocks/MinGW32编译Box2D?

我在互联网上发现了类似的问题,但没有一个对我有帮助。Code::Blocks工作区和项目文件包括DO生成.a文件,我已经将它们移动到Codeblocks/MinGW/lib,我已经将Box2D文件夹移动到Codeblocks/MinGW/include和HelloWorld.cpp示例仍然给我theseerrors. 最佳答案 看起来您用来构建.a的项目文件缺少一些文件。错误消息中提到的文件是在v2.1.2之后从Box2D中删除的文件,所以我猜您使用的是2.1.2源代码(或附近)以及来自其他来源的项目文件?无论如何,自己设置这些都非

windows - 如果用户在 win 7 中使用放大字体大小 125% 或 150% 需要找到你

有谁知道我是否可以在任何地方检查这个参数? 最佳答案 您可以阅读Graphics.DpiX辨别这一点。将Graphics.DpiX乘以100再除以96,您将得到字体缩放百分比。这是真的,因为100%的字体缩放等同于96dpi。请注意,如果您的应用程序未标记为DPIaware然后当用户将字体缩放比例设置为150%时,DpiX属性将报告96。在我的脑海中,我不知道标准WinForms应用程序是否被标记为DPI感知。 关于windows-如果用户在win7中使用放大字体大小125%或150%需

c++ - 如何在 Win32 中等待窗口完成绘制?

我使用函数PrintWindow获取某个窗口的屏幕截图。但是由于某些原因,PrintWindow的调用通常在窗口自己绘制时触发,因此窗口的某些尚未绘制的部分是全黑的。等待窗口完成绘画的任何解决方案? 最佳答案 等待窗口完成绘制并不是解决问题的办法。或者,换句话说,问题不在于在目标窗口处于其绘制周期的一部分时调用了PrintWindow。PrintWindow通过向目标窗口发送WM_PRINT(或WM_PRINTCLIENT)消息然后等待目标窗口的消息队列进行处理来实现功能那条消息。排队的消息不会交错。为了弄清实际问题的根源,我认为您

c# - 从 32 位代码在 System32 中运行 64 位可执行文件

我试图从32位C#应用程序(在64位操作系统上)运行可执行文件,但我得到“系统找不到指定的文件”可能是因为wsqmcons.exe在C中不存在:\Windows\SySWOW64。该文件确实存在于System32中。如果可能,从代码运行wsqmcons.exe的最佳方法是什么?Processp=newProcess();p.StartInfo.Arguments="-f";p.StartInfo.FileName=@"C:\Windows\System32\wsqmcons.exe";p.Start();p.WaitForExit();Verify.AreEqual(0,p.ExitC

windows - 同一系统上的 64 位和 32 位非托管 dll - 最佳实践?

我有一个内置于32位和64位的共享dll。两个版本都使用相同的名称foo.dll。如何在系统上同时安装foo.dll,以便我的32位和64位应用程序在其路径中找到正确的dll。Windows本身使用SysWOW64(用于32位dll)和System32(用于64位dll)。我想避免部署到这些文件夹。让两个位的dll在同一个盒子上共存并被链接到它们的适当应用程序找到的公认方式(如果有的话)是什么? 最佳答案 如果您不部署到受文件重定向影响的文件夹(即system32),那么您几乎需要为DLL指定不同的名称。这样做的原因是DLL搜索路径

windows - 如何通过 Win API 调用或(更好)读取注册表值来读取 Windows 构建版本

我们安装的系统偶尔会检测到错误的Windows版本。(它通过内置的Wise安装程序功能检测系统信息来检测版本,但没有说明它是如何做到这一点的)。因此,我正在寻找另一种检测Windows版本的方法。Wise安装程序调用WindowsAPI函数的能力非常有限,因此从注册表或特定文件中读取会更容易(当然,我必须将文件版本映射到Windows版本)。我找到了这个讨论帖:http://www.velocityreviews.com/forums/t513244-best-way-to-get-version-from-registry.html但它没有引用。所以我不确定它的可靠性如何。

.net - 7 个 64 位操作系统上带有 32 位 oracle 客户端驱动程序的 System.data.OracleClient

我有一个从asp.net1.1(VS2003)迁移到Asp.net2(VS2008)的Web应用程序。我在新版本上执行Oracleconnexion时遇到问题。开发环境是64位七。当使用所有CPU生成应用程序时,我在System.Data.OracleClient上遇到问题,异常System.BadImageFormatException:Tentativedechargementd'unprogramdeformatincorrect.(HRESULT异常:0x8007000B)。.我在x86CPU上生成,但在启动时出现此错误:[BadImageFormatException:Imp